package 草稿包;

import java.util.Scanner;

public class TEST12 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int m = scanner.nextInt(); // 起始蜂房编号
        int n = scanner.nextInt(); // 目标蜂房编号

        System.out.println(countPaths(m, n));
    }

    public static long countPaths(int m, int n) {
        if (m > n) {
            return 0; // 如果起始编号大于目标编号，没有路径
        }

        // 由于题目中提到m < n，我们可以从m + 1开始计算
        // 初始化路径数量数组，长度为n - m + 1
        long[] paths = new long[n - m + 1];

        // 从编号m开始，计算到达每个蜂房的路径数量
        for (int i = 0; i <= n - m; i++) {
            int currentHouse = m + i;
            if (currentHouse == m + 1) {
                // 如果是第一个目标蜂房，只有一种路径
                paths[i] = 1;
            } else {
                // 计算到达当前蜂房的路径数量
                paths[i] = paths[i - 1] + paths[i - 2];
            }
        }

        // 返回到达目标蜂房的路径总数
        return paths[n - m];
    }
}
